Package bg.smoc.web.servlet

Source Code of bg.smoc.web.servlet.PrintServlet

package bg.smoc.web.servlet;

import java.io.File;
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import kr.or.ioi2002.RMIClientBean.HttpPostFileParser;
import bg.smoc.model.Contest;
import bg.smoc.model.manager.ContestManager;
import bg.smoc.model.manager.PrintManager;
import bg.smoc.web.utils.SessionUtil;

public class PrintServlet extends HttpServlet {

    private static final long serialVersionUID = -8780948852730239395L;

    @Override
    public void service(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        String userId = (String) request.getSession().getAttribute("id");
        if (userId == null) {
            response.sendRedirect("index.jsp");
            return;
        }

        PrintManager printManager = SessionUtil.getInstance().getPrintManager();
        ContestManager contestManager = SessionUtil.getInstance().getContestManager();
       
        Contest currContest = contestManager.getContest(request);
        // do not allow printing in open contests
        if (currContest.isOpenContest()) {
            response.sendRedirect("main?error=52");
            return;
        }

        try {
            // request parsing
            HttpPostFileParser postFileParser = new HttpPostFileParser();
            // convert from KBytes to bytes
            int maxFileSize = printManager.getMaxFileSize() * 1024;
            postFileParser.init(request, maxFileSize);

            if (postFileParser.nFile == 0) {
                response.sendRedirect("main?error=12");
                return;
            }

            File fileSrcFile = postFileParser.upFile[0].GetTmpFile();

            boolean bResult = printManager.print(fileSrcFile, userId);
            if (!bResult) {
                response.sendRedirect("main?error=52");
            } else {
                response.sendRedirect("main?error=50");
            }
        } catch (java.io.IOException ex) {
            response.sendRedirect("main?error=14");
        }
    }
}
TOP

Related Classes of bg.smoc.web.servlet.PrintServlet

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.